/*
* Copyright 2009 NOR_/D Labs <http://labs.nortd.com>
*
* This file is part of SceneExpression.
* SceneExpression is free software: you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License 
* as published by the Free Software Foundation, either version 3 of 
* the License, or (at your option) any later version. For details
* see <http://www.gnu.org/licenses/>.
*
* * *
* This is the main include file. Include this and you are ready
* to use SceneExpression.
*/

#ifndef SX_MAIN
#define SX_MAIN


#include <osgDB/ReadFile>

#include <sx/Constants.h>
#include <sx/Types.h>
#include <sx/Scene.h>

#include <sx/Node.h>
#include <sx/Model.h>

#include <sx/App.h>
#include <sx/Shape.h>
#include <sx/TriangleShape.h>
#include <sx/RectangleShape.h>
#include <sx/LineShape.h>
#include <sx/EllipseShape.h>
#include <sx/CircleShape.h>
#include <sx/MonsterShape.h>
#include <sx/ImageShape.h>
#include <sx/TextShape.h>
#include <sx/VertexShape.h>

#include <sx/Widget.h>
#include <sx/PanelWidget.h>
#include <sx/ButtonWidget.h>
#include <sx/SliderWidget.h>
#include <sx/ToggleWidget.h>


// include the plugins we need
USE_OSGPLUGIN(freetype)


#if defined( TARGET_OSX )
USE_OSGPLUGIN(quicktime)
USE_OSGPLUGIN(bmp)
USE_OSGPLUGIN(osg)
USE_OSGPLUGIN(obj)
USE_OSGPLUGIN(3ds)
USE_OSGPLUGIN(dxf)
USE_OSGPLUGIN(stl)
#elif defined( TARGET_LINUX )
USE_OSGPLUGIN(png)
USE_OSGPLUGIN(jpeg)
USE_OSGPLUGIN(bmp)
USE_OSGPLUGIN(osg)
USE_OSGPLUGIN(obj)
USE_OSGPLUGIN(3ds)
USE_OSGPLUGIN(dxf)
USE_OSGPLUGIN(stl)
#elif defined( TARGET_WIN32 )
USE_OSGPLUGIN(png)
USE_OSGPLUGIN(jpeg)
USE_OSGPLUGIN(bmp)
USE_OSGPLUGIN(osg)
USE_OSGPLUGIN(obj)
USE_OSGPLUGIN(3ds)
USE_OSGPLUGIN(dxf)
USE_OSGPLUGIN(stl)
#endif

// include the platform specific GraphicsWindow implementation.
USE_GRAPHICSWINDOW()

#endif